﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.Serialization;
using ARR.Entities.Gateways;

namespace ARR.Entities
{
    [DataContract]
    [Serializable]
    public class StoreCoveragePenetration : EntityBase
    {
        [DataMember]
        StoreCoveragePenetrationRow row;

        public StoreCoveragePenetration(StoreCoveragePenetrationRow row)
        {
            this.row = row;
        }

        public StoreCoveragePenetration()
        {
            row = new StoreCoveragePenetrationRow();
        }

        public override void Initialize()
        {
            row = new StoreCoveragePenetrationRow();
        }

        [DataMember]
        public short StoreId 
        {
            get { return row.StoreId; }
            set { row.StoreId = value; }
        }

        [DataMember]
        public int ArticleId
        {
            get { return row.ArticleId; }
            set { row.ArticleId = value; }
        }

        [DataMember]
        public bool SKUCoverage
        {
            get { return row.SKUCoverage; }
            set { row.SKUCoverage = value; }
        }

        [DataMember]
        public bool SKUPenetration
        {
            get { return row.SKUPenetration; }
            set { row.SKUPenetration = value; }
        }

        [DataMember]
        public decimal Sales
        {
            get { return row.Sales; }
            set { row.Sales = value; }
        }

        [DataMember]
        public string StoreSegmentation1
        {
            get { return row.StoreSegmentation1; }
            set { row.StoreSegmentation1 = value; }
        }

        [DataMember]
        public string StoreSegmentation2
        {
            get { return row.StoreSegmentation2; }
            set { row.StoreSegmentation2 = value; }
        }

        [DataMember]
        public string Region
        {
            get { return row.Region; }
            set { row.Region = value; }
        }

        [DataMember]
        public string Subregion
        {
            get { return row.Subregion; }
            set { row.Subregion = value; }
        }

        [DataMember]
        public string City
        {
            get { return row.City; }
            set { row.City = value; }
        }

        [DataMember]
        public string State
        {
            get { return row.State; }
            set { row.State = value; }
        }

        [DataMember]
        public string ShoppingOccasion
        {
            get { return row.ShoppingOccasion; }
            set { row.ShoppingOccasion = value; }
        }

        [DataMember]
        public string Size
        {
            get { return row.Size; }
            set { row.Size = value; }
        }

        [DataMember]
        public string Format
        {
            get { return row.Format; }
            set { row.Format = value; }
        }

        [DataMember]
        public string ShopType
        {
            get { return row.ShopType; }
            set { row.ShopType = value; }
        }

        [DataMember]
        public string Layout
        {
            get { return row.Layout; }
            set { row.Layout = value; }
        }

        [DataMember]
        public string OpeningHours
        {
            get { return row.OpeningHours; }
            set { row.OpeningHours = value; }
        }

        [DataMember]
        public string SELCustomers
        {
            get { return row.SELCustomers; }
            set { row.SELCustomers = value; }
        }

        [DataMember]
        public string SELLocation
        {
            get { return row.SELLocation; }
            set { row.SELLocation = value; }
        }

        [DataMember]
        public string SEL
        {
            get { return row.SEL; }
            set { row.SEL = value; }
        }

        [DataMember]
        public string Attribute1
        {
            get { return row.Attribute1; }
            set { row.Attribute1 = value; }
        }

        [DataMember]
        public string Attribute2
        {
            get { return row.Attribute2; }
            set { row.Attribute2 = value; }
        }

        [DataMember]
        public int TotalStoresCoverage
        {
            get { return row.TotalStoresCoverage; }
            set { row.TotalStoresCoverage = value; }
        }
    }
}
